package com.wjh.serivce;

import com.wjh.order.dto.OrderDetailDto;
import com.wjh.order.request.UpdateOrderPayStateRequest;
import com.wjh.user.request.UpdateAmountRequest;

/**
 * @author wenjianhai
 * @date 2023/6/26
 * @since JDK 17
 */
public interface ICommonService {
	/**
	 * 查询订单及其详情
	 *
	 * @date 2023-06-28
	 * @param orderGuid 订单Guid
	 * @return OrderDetailDto
	 * @since JDK 17
	 * @author wenjianhai
	 */
	OrderDetailDto queryOrderAndDetails(String orderGuid);

	/**
	 * 更新订单的支付状态
	 *
	 * @date 2023-06-29
	 * @param request 请求参数
	 * @param tip     功能名称
	 * @since JDK 17
	 * @author wenjianhai
	 */
	void updateOrderPayState(UpdateOrderPayStateRequest request, String tip);

	/**
	 * 更新用户可用金额
	 *
	 * @date 2023-06-29
	 * @param request 请求参数
	 * @since JDK 17
	 * @author wenjianhai
	 */
	void updateUserAmount(UpdateAmountRequest request);
}
